/*
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 *
 * The Original Code is Copyright (C) 2016 Blender Foundation.
 * All rights reserved.
 */

/** \file
 * \ingroup edgizmolib
 */

#include "../gizmo_geometry.h"

static const float verts[][3] = {
    {1.034000, 0.000000, 0.000000},    {1.017000, 0.000000, 0.029445},
    {0.983000, 0.000000, 0.029445},    {0.966000, 0.000000, 0.000000},
    {0.983000, 0.000000, -0.029445},   {1.017000, 0.000000, -0.029445},
    {1.014132, 0.201723, 0.000000},    {0.997459, 0.198407, 0.029445},
    {0.964112, 0.191774, 0.029445},    {0.947439, 0.188457, 0.000000},
    {0.964112, 0.191774, -0.029445},   {0.997459, 0.198407, -0.029445},
    {0.955292, 0.395695, 0.000000},    {0.939586, 0.389189, 0.029445},
    {0.908174, 0.376178, 0.029445},    {0.892468, 0.369672, 0.000000},
    {0.908174, 0.376178, -0.029445},   {0.939586, 0.389189, -0.029445},
    {0.859740, 0.574460, 0.000000},    {0.845605, 0.565015, 0.029445},
    {0.817335, 0.546126, 0.029445},    {0.803200, 0.536681, 0.000000},
    {0.817335, 0.546126, -0.029445},   {0.845605, 0.565015, -0.029445},
    {0.731148, 0.731148, 0.000000},    {0.719128, 0.719128, 0.029445},
    {0.695086, 0.695086, 0.029445},    {0.683065, 0.683065, 0.000000},
    {0.695086, 0.695086, -0.029445},   {0.719128, 0.719128, -0.029445},
    {0.574460, 0.859740, 0.000000},    {0.565015, 0.845605, 0.029445},
    {0.546125, 0.817335, 0.029445},    {0.536681, 0.803200, 0.000000},
    {0.546125, 0.817335, -0.029445},   {0.565015, 0.845605, -0.029445},
    {0.395695, 0.955291, 0.000000},    {0.389189, 0.939585, 0.029445},
    {0.376178, 0.908173, 0.029445},    {0.369672, 0.892467, 0.000000},
    {0.376178, 0.908173, -0.029445},   {0.389189, 0.939585, -0.029445},
    {0.201724, 1.014132, 0.000000},    {0.198407, 0.997459, 0.029445},
    {0.191774, 0.964112, 0.029445},    {0.188457, 0.947439, 0.000000},
    {0.191774, 0.964112, -0.029445},   {0.198407, 0.997459, -0.029445},
    {0.000000, 1.034000, 0.000000},    {0.000000, 1.017000, 0.029445},
    {0.000000, 0.983000, 0.029445},    {0.000000, 0.966000, 0.000000},
    {0.000000, 0.983000, -0.029445},   {0.000000, 1.017000, -0.029445},
    {-0.201723, 1.014132, 0.000000},   {-0.198407, 0.997459, 0.029445},
    {-0.191774, 0.964112, 0.029445},   {-0.188457, 0.947439, 0.000000},
    {-0.191774, 0.964112, -0.029445},  {-0.198407, 0.997459, -0.029445},
    {-0.395695, 0.955291, 0.000000},   {-0.389189, 0.939585, 0.029445},
    {-0.376178, 0.908174, 0.029445},   {-0.369672, 0.892468, 0.000000},
    {-0.376178, 0.908174, -0.029445},  {-0.389189, 0.939585, -0.029445},
    {-0.574459, 0.859740, 0.000000},   {-0.565015, 0.845605, 0.029445},
    {-0.546125, 0.817335, 0.029445},   {-0.536681, 0.803200, 0.000000},
    {-0.546125, 0.817335, -0.029445},  {-0.565015, 0.845605, -0.029445},
    {-0.731149, 0.731148, 0.000000},   {-0.719128, 0.719127, 0.029445},
    {-0.695086, 0.695086, 0.029445},   {-0.683065, 0.683065, 0.000000},
    {-0.695086, 0.695086, -0.029445},  {-0.719128, 0.719127, -0.029445},
    {-0.859740, 0.574460, 0.000000},   {-0.845604, 0.565015, 0.029445},
    {-0.817335, 0.546126, 0.029445},   {-0.803200, 0.536681, 0.000000},
    {-0.817335, 0.546126, -0.029445},  {-0.845604, 0.565015, -0.029445},
    {-0.955291, 0.395695, 0.000000},   {-0.939585, 0.389189, 0.029445},
    {-0.908173, 0.376178, 0.029445},   {-0.892468, 0.369672, 0.000000},
    {-0.908173, 0.376178, -0.029445},  {-0.939585, 0.389189, -0.029445},
    {-1.014132, 0.201723, 0.000000},   {-0.997459, 0.198407, 0.029445},
    {-0.964112, 0.191774, 0.029445},   {-0.947439, 0.188457, 0.000000},
    {-0.964112, 0.191774, -0.029445},  {-0.997459, 0.198407, -0.029445},
    {-1.034000, 0.000000, 0.000000},   {-1.017000, 0.000000, 0.029445},
    {-0.983000, 0.000000, 0.029445},   {-0.966000, 0.000000, 0.000000},
    {-0.983000, 0.000000, -0.029445},  {-1.017000, 0.000000, -0.029445},
    {-1.014132, -0.201723, 0.000000},  {-0.997459, -0.198407, 0.029445},
    {-0.964112, -0.191774, 0.029445},  {-0.947439, -0.188457, 0.000000},
    {-0.964112, -0.191774, -0.029445}, {-0.997459, -0.198407, -0.029445},
    {-0.955292, -0.395694, 0.000000},  {-0.939586, -0.389189, 0.029445},
    {-0.908174, -0.376177, 0.029445},  {-0.892468, -0.369672, 0.000000},
    {-0.908174, -0.376177, -0.029445}, {-0.939586, -0.389189, -0.029445},
    {-0.859740, -0.574460, 0.000000},  {-0.845604, -0.565015, 0.029445},
    {-0.817335, -0.546126, 0.029445},  {-0.803200, -0.536681, 0.000000},
    {-0.817335, -0.546126, -0.029445}, {-0.845604, -0.565015, -0.029445},
    {-0.731149, -0.731148, 0.000000},  {-0.719128, -0.719127, 0.029445},
    {-0.695086, -0.695086, 0.029445},  {-0.683065, -0.683065, 0.000000},
    {-0.695086, -0.695086, -0.029445}, {-0.719128, -0.719127, -0.029445},
    {-0.574460, -0.859739, 0.000000},  {-0.565015, -0.845604, 0.029445},
    {-0.546126, -0.817334, 0.029445},  {-0.536681, -0.803199, 0.000000},
    {-0.546126, -0.817334, -0.029445}, {-0.565015, -0.845604, -0.029445},
    {-0.395695, -0.955291, 0.000000},  {-0.389189, -0.939585, 0.029445},
    {-0.376178, -0.908174, 0.029445},  {-0.369672, -0.892468, 0.000000},
    {-0.376178, -0.908174, -0.029445}, {-0.389189, -0.939585, -0.029445},
    {-0.201724, -1.014132, 0.000000},  {-0.198407, -0.997459, 0.029445},
    {-0.191774, -0.964112, 0.029445},  {-0.188458, -0.947438, 0.000000},
    {-0.191774, -0.964112, -0.029445}, {-0.198407, -0.997459, -0.029445},
    {0.000000, -1.034000, 0.000000},   {0.000000, -1.017000, 0.029445},
    {0.000000, -0.983000, 0.029445},   {0.000000, -0.966000, 0.000000},
    {0.000000, -0.983000, -0.029445},  {0.000000, -1.017000, -0.029445},
    {0.201723, -1.014132, 0.000000},   {0.198407, -0.997459, 0.029445},
    {0.191773, -0.964112, 0.029445},   {0.188457, -0.947439, 0.000000},
    {0.191773, -0.964112, -0.029445},  {0.198407, -0.997459, -0.029445},
    {0.395695, -0.955291, 0.000000},   {0.389189, -0.939585, 0.029445},
    {0.376178, -0.908173, 0.029445},   {0.369672, -0.892467, 0.000000},
    {0.376178, -0.908173, -0.029445},  {0.389189, -0.939585, -0.029445},
    {0.574460, -0.859740, 0.000000},   {0.565015, -0.845605, 0.029445},
    {0.546125, -0.817335, 0.029445},   {0.536681, -0.803200, 0.000000},
    {0.546125, -0.817335, -0.029445},  {0.565015, -0.845605, -0.029445},
    {0.731148, -0.731149, 0.000000},   {0.719127, -0.719128, 0.029445},
    {0.695086, -0.695086, 0.029445},   {0.683065, -0.683066, 0.000000},
    {0.695086, -0.695086, -0.029445},  {0.719127, -0.719128, -0.029445},
    {0.859740, -0.574460, 0.000000},   {0.845605, -0.565015, 0.029445},
    {0.817335, -0.546126, 0.029445},   {0.803200, -0.536681, 0.000000},
    {0.817335, -0.546126, -0.029445},  {0.845605, -0.565015, -0.029445},
    {0.955291, -0.395695, 0.000000},   {0.939585, -0.389189, 0.029445},
    {0.908173, -0.376178, 0.029445},   {0.892467, -0.369673, 0.000000},
    {0.908173, -0.376178, -0.029445},  {0.939585, -0.389189, -0.029445},
    {1.014132, -0.201723, 0.000000},   {0.997459, -0.198407, 0.029445},
    {0.964112, -0.191774, 0.029445},   {0.947439, -0.188457, 0.000000},
    {0.964112, -0.191774, -0.029445},  {0.997459, -0.198407, -0.029445},
};

static const float normals[][3] = {
    {1.000000, 0.000000, 0.000000},    {0.522691, 0.000000, 0.852504},
    {-0.475845, 0.000000, 0.879513},   {-1.000000, 0.000000, 0.000000},
    {-0.475845, 0.000000, -0.879513},  {0.522691, 0.000000, -0.852504},
    {0.980773, 0.195074, 0.000000},    {0.512650, 0.101962, 0.852504},
    {-0.466689, -0.092807, 0.879513},  {-0.980773, -0.195074, 0.000000},
    {-0.466689, -0.092807, -0.879513}, {0.512650, 0.101962, -0.852504},
    {0.923856, 0.382672, 0.000000},    {0.482894, 0.200018, 0.852504},
    {-0.439619, -0.182073, 0.879513},  {-0.923856, -0.382672, 0.000000},
    {-0.439619, -0.182073, -0.879513}, {0.482894, 0.200018, -0.852504},
    {0.831446, 0.555559, 0.000000},    {0.434614, 0.290384, 0.852504},
    {-0.395642, -0.264351, 0.879513},  {-0.831446, -0.555559, 0.000000},
    {-0.395642, -0.264351, -0.879513}, {0.434614, 0.290384, -0.852504},
    {0.707083, 0.707083, 0.000000},    {0.369610, 0.369610, 0.852504},
    {-0.336467, -0.336467, 0.879513},  {-0.707083, -0.707083, 0.000000},
    {-0.336467, -0.336467, -0.879513}, {0.369610, 0.369610, -0.852504},
    {0.555559, 0.831446, 0.000000},    {0.290384, 0.434614, 0.852504},
    {-0.264351, -0.395642, 0.879513},  {-0.555559, -0.831446, 0.000000},
    {-0.264351, -0.395642, -0.879513}, {0.290384, 0.434614, -0.852504},
    {0.382672, 0.923856, 0.000000},    {0.200018, 0.482894, 0.852504},
    {-0.182073, -0.439619, 0.879513},  {-0.382672, -0.923856, 0.000000},
    {-0.182073, -0.439619, -0.879513}, {0.200018, 0.482894, -0.852504},
    {0.195074, 0.980773, 0.000000},    {0.101962, 0.512650, 0.852504},
    {-0.092807, -0.466689, 0.879513},  {-0.195074, -0.980773, 0.000000},
    {-0.092807, -0.466689, -0.879513}, {0.101962, 0.512650, -0.852504},
    {0.000000, 1.000000, 0.000000},    {0.000000, 0.522691, 0.852504},
    {0.000000, -0.475845, 0.879513},   {0.000000, -1.000000, 0.000000},
    {0.000000, -0.475845, -0.879513},  {0.000000, 0.522691, -0.852504},
    {-0.195074, 0.980773, 0.000000},   {-0.101962, 0.512650, 0.852504},
    {0.092807, -0.466689, 0.879513},   {0.195074, -0.980773, 0.000000},
    {0.092807, -0.466689, -0.879513},  {-0.101962, 0.512650, -0.852504},
    {-0.382672, 0.923856, 0.000000},   {-0.200018, 0.482894, 0.852504},
    {0.182073, -0.439619, 0.879513},   {0.382672, -0.923856, 0.000000},
    {0.182073, -0.439619, -0.879513},  {-0.200018, 0.482894, -0.852504},
    {-0.555559, 0.831446, 0.000000},   {-0.290384, 0.434614, 0.852504},
    {0.264351, -0.395642, 0.879513},   {0.555559, -0.831446, 0.000000},
    {0.264351, -0.395642, -0.879513},  {-0.290384, 0.434614, -0.852504},
    {-0.707083, 0.707083, 0.000000},   {-0.369610, 0.369610, 0.852504},
    {0.336467, -0.336467, 0.879513},   {0.707083, -0.707083, 0.000000},
    {0.336467, -0.336467, -0.879513},  {-0.369610, 0.369610, -0.852504},
    {-0.831446, 0.555559, 0.000000},   {-0.434614, 0.290384, 0.852504},
    {0.395642, -0.264351, 0.879513},   {0.831446, -0.555559, 0.000000},
    {0.395642, -0.264351, -0.879513},  {-0.434614, 0.290384, -0.852504},
    {-0.923856, 0.382672, 0.000000},   {-0.482894, 0.200018, 0.852504},
    {0.439619, -0.182073, 0.879513},   {0.923856, -0.382672, 0.000000},
    {0.439619, -0.182073, -0.879513},  {-0.482894, 0.200018, -0.852504},
    {-0.980773, 0.195074, 0.000000},   {-0.512650, 0.101962, 0.852504},
    {0.466689, -0.092807, 0.879513},   {0.980773, -0.195074, 0.000000},
    {0.466689, -0.092807, -0.879513},  {-0.512650, 0.101962, -0.852504},
    {-1.000000, 0.000000, 0.000000},   {-0.522691, 0.000000, 0.852504},
    {0.475845, 0.000000, 0.879513},    {1.000000, 0.000000, 0.000000},
    {0.475845, 0.000000, -0.879513},   {-0.522691, 0.000000, -0.852504},
    {-0.980773, -0.195074, 0.000000},  {-0.512650, -0.101962, 0.852504},
    {0.466689, 0.092807, 0.879513},    {0.980773, 0.195074, 0.000000},
    {0.466689, 0.092807, -0.879513},   {-0.512650, -0.101962, -0.852504},
    {-0.923856, -0.382672, 0.000000},  {-0.482894, -0.200018, 0.852504},
    {0.439619, 0.182073, 0.879513},    {0.923856, 0.382672, 0.000000},
    {0.439619, 0.182073, -0.879513},   {-0.482894, -0.200018, -0.852504},
    {-0.831446, -0.555559, 0.000000},  {-0.434614, -0.290384, 0.852504},
    {0.395642, 0.264351, 0.879513},    {0.831446, 0.555559, 0.000000},
    {0.395642, 0.264351, -0.879513},   {-0.434614, -0.290384, -0.852504},
    {-0.707083, -0.707083, 0.000000},  {-0.369610, -0.369610, 0.852504},
    {0.336467, 0.336467, 0.879513},    {0.707083, 0.707083, 0.000000},
    {0.336467, 0.336467, -0.879513},   {-0.369610, -0.369610, -0.852504},
    {-0.555559, -0.831446, 0.000000},  {-0.290384, -0.434614, 0.852504},
    {0.264351, 0.395642, 0.879513},    {0.555559, 0.831446, 0.000000},
    {0.264351, 0.395642, -0.879513},   {-0.290384, -0.434614, -0.852504},
    {-0.382672, -0.923856, 0.000000},  {-0.200018, -0.482894, 0.852504},
    {0.182073, 0.439619, 0.879513},    {0.382672, 0.923856, 0.000000},
    {0.182073, 0.439619, -0.879513},   {-0.200018, -0.482894, -0.852504},
    {-0.195074, -0.980773, 0.000000},  {-0.101962, -0.512650, 0.852504},
    {0.092807, 0.466689, 0.879513},    {0.195074, 0.980773, 0.000000},
    {0.092807, 0.466689, -0.879513},   {-0.101962, -0.512650, -0.852504},
    {0.000000, -1.000000, 0.000000},   {0.000000, -0.522691, 0.852504},
    {0.000000, 0.475845, 0.879513},    {0.000000, 1.000000, 0.000000},
    {0.000000, 0.475845, -0.879513},   {0.000000, -0.522691, -0.852504},
    {0.195074, -0.980773, 0.000000},   {0.101962, -0.512650, 0.852504},
    {-0.092807, 0.466689, 0.879513},   {-0.195074, 0.980773, 0.000000},
    {-0.092807, 0.466689, -0.879513},  {0.101962, -0.512650, -0.852504},
    {0.382672, -0.923856, 0.000000},   {0.200018, -0.482894, 0.852504},
    {-0.182073, 0.439619, 0.879513},   {-0.382672, 0.923856, 0.000000},
    {-0.182073, 0.439619, -0.879513},  {0.200018, -0.482894, -0.852504},
    {0.555559, -0.831446, 0.000000},   {0.290384, -0.434614, 0.852504},
    {-0.264351, 0.395642, 0.879513},   {-0.555559, 0.831446, 0.000000},
    {-0.264351, 0.395642, -0.879513},  {0.290384, -0.434614, -0.852504},
    {0.707083, -0.707083, 0.000000},   {0.369610, -0.369610, 0.852504},
    {-0.336467, 0.336467, 0.879513},   {-0.707083, 0.707083, 0.000000},
    {-0.336467, 0.336467, -0.879513},  {0.369610, -0.369610, -0.852504},
    {0.831446, -0.555559, 0.000000},   {0.434614, -0.290384, 0.852504},
    {-0.395642, 0.264351, 0.879513},   {-0.831446, 0.555559, 0.000000},
    {-0.395642, 0.264351, -0.879513},  {0.434614, -0.290384, -0.852504},
    {0.923856, -0.382672, 0.000000},   {0.482894, -0.200018, 0.852504},
    {-0.439619, 0.182073, 0.879513},   {-0.923856, 0.382672, 0.000000},
    {-0.439619, 0.182073, -0.879513},  {0.482894, -0.200018, -0.852504},
    {0.980773, -0.195074, 0.000000},   {0.512650, -0.101962, 0.852504},
    {-0.466689, 0.092807, 0.879513},   {-0.980773, 0.195074, 0.000000},
    {-0.466689, 0.092807, -0.879513},  {0.512650, -0.101962, -0.852504},
};

static const unsigned short indices[] = {
    6,   7,   1,   7,   8,   2,   8,   9,   3,   9,   10,  4,   10,  11,  5,   5,   11,  6,   12,
    13,  7,   13,  14,  8,   14,  15,  9,   15,  16,  10,  16,  17,  11,  11,  17,  12,  18,  19,
    13,  13,  19,  20,  20,  21,  15,  15,  21,  22,  22,  23,  17,  17,  23,  18,  24,  25,  19,
    19,  25,  26,  26,  27,  21,  21,  27,  28,  28,  29,  23,  23,  29,  24,  30,  31,  25,  25,
    31,  32,  26,  32,  33,  27,  33,  34,  34,  35,  29,  29,  35,  30,  36,  37,  31,  31,  37,
    38,  38,  39,  33,  39,  40,  34,  40,  41,  35,  35,  41,  36,  36,  42,  43,  43,  44,  38,
    44,  45,  39,  45,  46,  40,  46,  47,  41,  47,  42,  36,  48,  49,  43,  49,  50,  44,  50,
    51,  45,  51,  52,  46,  52,  53,  47,  47,  53,  48,  54,  55,  49,  49,  55,  56,  50,  56,
    57,  57,  58,  52,  58,  59,  53,  53,  59,  54,  60,  61,  55,  55,  61,  62,  56,  62,  63,
    63,  64,  58,  64,  65,  59,  59,  65,  60,  66,  67,  61,  61,  67,  68,  68,  69,  63,  69,
    70,  64,  70,  71,  65,  71,  66,  60,  72,  73,  67,  73,  74,  68,  68,  74,  75,  75,  76,
    70,  76,  77,  71,  71,  77,  72,  78,  79,  73,  79,  80,  74,  74,  80,  81,  81,  82,  76,
    82,  83,  77,  83,  78,  72,  78,  84,  85,  85,  86,  80,  80,  86,  87,  87,  88,  82,  82,
    88,  89,  89,  84,  78,  90,  91,  85,  91,  92,  86,  86,  92,  93,  93,  94,  88,  88,  94,
    95,  95,  90,  84,  96,  97,  91,  97,  98,  92,  98,  99,  93,  99,  100, 94,  100, 101, 95,
    101, 96,  90,  102, 103, 97,  103, 104, 98,  104, 105, 99,  99,  105, 106, 106, 107, 101, 101,
    107, 102, 108, 109, 103, 103, 109, 110, 110, 111, 105, 105, 111, 112, 112, 113, 107, 107, 113,
    108, 114, 115, 109, 115, 116, 110, 116, 117, 111, 111, 117, 118, 112, 118, 119, 113, 119, 114,
    114, 120, 121, 121, 122, 116, 122, 123, 117, 117, 123, 124, 124, 125, 119, 125, 120, 114, 126,
    127, 121, 121, 127, 128, 128, 129, 123, 123, 129, 130, 130, 131, 125, 125, 131, 126, 132, 133,
    127, 133, 134, 128, 128, 134, 135, 135, 136, 130, 136, 137, 131, 131, 137, 132, 132, 138, 139,
    133, 139, 140, 134, 140, 141, 141, 142, 136, 142, 143, 137, 143, 138, 132, 138, 144, 145, 139,
    145, 146, 146, 147, 141, 141, 147, 148, 148, 149, 143, 149, 144, 138, 144, 150, 151, 151, 152,
    146, 146, 152, 153, 153, 154, 148, 154, 155, 149, 155, 150, 144, 156, 157, 151, 151, 157, 158,
    158, 159, 153, 159, 160, 154, 160, 161, 155, 155, 161, 156, 156, 162, 163, 163, 164, 158, 158,
    164, 165, 165, 166, 160, 160, 166, 167, 167, 162, 156, 162, 168, 169, 169, 170, 164, 164, 170,
    171, 165, 171, 172, 166, 172, 173, 173, 168, 162, 174, 175, 169, 175, 176, 170, 170, 176, 177,
    177, 178, 172, 172, 178, 179, 173, 179, 174, 174, 180, 181, 181, 182, 176, 176, 182, 183, 183,
    184, 178, 178, 184, 185, 179, 185, 180, 186, 187, 181, 187, 188, 182, 188, 189, 183, 183, 189,
    190, 190, 191, 185, 191, 186, 180, 0,   1,   187, 1,   2,   188, 2,   3,   189, 3,   4,   190,
    190, 4,   5,   191, 5,   0,   0,   6,   1,   1,   7,   2,   2,   8,   3,   3,   9,   4,   4,
    10,  5,   0,   5,   6,   6,   12,  7,   7,   13,  8,   8,   14,  9,   9,   15,  10,  10,  16,
    11,  6,   11,  12,  12,  18,  13,  14,  13,  20,  14,  20,  15,  16,  15,  22,  16,  22,  17,
    12,  17,  18,  18,  24,  19,  20,  19,  26,  20,  26,  21,  22,  21,  28,  22,  28,  23,  18,
    23,  24,  24,  30,  25,  26,  25,  32,  27,  26,  33,  28,  27,  34,  28,  34,  29,  24,  29,
    30,  30,  36,  31,  32,  31,  38,  32,  38,  33,  33,  39,  34,  34,  40,  35,  30,  35,  36,
    37,  36,  43,  37,  43,  38,  38,  44,  39,  39,  45,  40,  40,  46,  41,  41,  47,  36,  42,
    48,  43,  43,  49,  44,  44,  50,  45,  45,  51,  46,  46,  52,  47,  42,  47,  48,  48,  54,
    49,  50,  49,  56,  51,  50,  57,  51,  57,  52,  52,  58,  53,  48,  53,  54,  54,  60,  55,
    56,  55,  62,  57,  56,  63,  57,  63,  58,  58,  64,  59,  54,  59,  60,  60,  66,  61,  62,
    61,  68,  62,  68,  63,  63,  69,  64,  64,  70,  65,  65,  71,  60,  66,  72,  67,  67,  73,
    68,  69,  68,  75,  69,  75,  70,  70,  76,  71,  66,  71,  72,  72,  78,  73,  73,  79,  74,
    75,  74,  81,  75,  81,  76,  76,  82,  77,  77,  83,  72,  79,  78,  85,  79,  85,  80,  81,
    80,  87,  81,  87,  82,  83,  82,  89,  83,  89,  78,  84,  90,  85,  85,  91,  86,  87,  86,
    93,  87,  93,  88,  89,  88,  95,  89,  95,  84,  90,  96,  91,  91,  97,  92,  92,  98,  93,
    93,  99,  94,  94,  100, 95,  95,  101, 90,  96,  102, 97,  97,  103, 98,  98,  104, 99,  100,
    99,  106, 100, 106, 101, 96,  101, 102, 102, 108, 103, 104, 103, 110, 104, 110, 105, 106, 105,
    112, 106, 112, 107, 102, 107, 108, 108, 114, 109, 109, 115, 110, 110, 116, 111, 112, 111, 118,
    113, 112, 119, 108, 113, 114, 115, 114, 121, 115, 121, 116, 116, 122, 117, 118, 117, 124, 118,
    124, 119, 119, 125, 114, 120, 126, 121, 122, 121, 128, 122, 128, 123, 124, 123, 130, 124, 130,
    125, 120, 125, 126, 126, 132, 127, 127, 133, 128, 129, 128, 135, 129, 135, 130, 130, 136, 131,
    126, 131, 132, 133, 132, 139, 134, 133, 140, 135, 134, 141, 135, 141, 136, 136, 142, 137, 137,
    143, 132, 139, 138, 145, 140, 139, 146, 140, 146, 141, 142, 141, 148, 142, 148, 143, 143, 149,
    138, 145, 144, 151, 145, 151, 146, 147, 146, 153, 147, 153, 148, 148, 154, 149, 149, 155, 144,
    150, 156, 151, 152, 151, 158, 152, 158, 153, 153, 159, 154, 154, 160, 155, 150, 155, 156, 157,
    156, 163, 157, 163, 158, 159, 158, 165, 159, 165, 160, 161, 160, 167, 161, 167, 156, 163, 162,
    169, 163, 169, 164, 165, 164, 171, 166, 165, 172, 167, 166, 173, 167, 173, 162, 168, 174, 169,
    169, 175, 170, 171, 170, 177, 171, 177, 172, 173, 172, 179, 168, 173, 174, 175, 174, 181, 175,
    181, 176, 177, 176, 183, 177, 183, 178, 179, 178, 185, 174, 179, 180, 180, 186, 181, 181, 187,
    182, 182, 188, 183, 184, 183, 190, 184, 190, 185, 185, 191, 180, 186, 0,   187, 187, 1,   188,
    188, 2,   189, 189, 3,   190, 191, 190, 5,   186, 191, 0,
};

GizmoGeomInfo wm_gizmo_geom_data_dial = {
    .nverts = 192,
    .ntris = 384,
    .verts = verts,
    .normals = normals,
    .indices = indices,
};
